草庐IT

iOS AVCaptureVideoDataOutput 占用太多内存

全部标签

c# - 开发和调试内存占用 C# 应用程序

我有一个C#应用程序,它必须与32位库链接并且还需要使用尽可能多的内存(成像应用程序);我们在XP64桌面上运行该应用程序,因此我们使用WOW64,目标是在VisualStudioforx86中构建(并执行editbin/largeaddressaware构建后)。我们遇到了一些问题:在VisualStudio内置调试​​器中,我们只能使用2gb内存(应用约1.5gb,加上开销)从命令行运行,应用程序可以看到3gb内存,但Microsoft文档似乎说我们应该看到4gb。谁能告诉我如何让WOW64C#应用程序看到平台应该能够提供的完整4gb?此外,谁能告诉我如何让VisualStudio

c# - 追踪 .NET Windows 服务内存泄漏

在生产环境中安装我的Windows服务之前,我一直在寻找可以执行的可靠测试,以确保我的代码不包含内存泄漏。但是,我在网上能找到的所有内容都是使用任务管理器查看已用内存或一些付费内存分析器工具。根据我的理解,查看任务管理器并没有多大帮助,也无法确认内存泄漏(以防万一)。如何确认是否有内存泄漏?有没有免费的工具可以找到内存泄漏的根源?注意:我使用的是.NetFramework4.6和VisualStudio2015Community 最佳答案 您可以使用任务管理器。GC应用程序可能会泄漏内存,它会在那里显示。但是……免费工具-“.Net

c# - 如何从 SQL Server 内存中清除 SqlDependency?

如何清理SQLServer以摆脱过期的SqlDependency对象?在我从SqlDepedency对象接收到事件后,我需要先创建一个新事件,然后才能获取新事件。但是,SQLServer进程的内存使用量会攀升,直到用完允许的内存(SQLServerExpress)。如何摆脱旧查询?代码://Func:RegisterTableListenerusing(SqlConnectioncn=newSqlConnection(Properties.Settings.Default.DatabseEventConnectionString)){if(cmd==null){cmd=cn.Creat

c# - 如何在不分配大量内存的情况下显示快速更新的图像?

我在超声机上安装了一个WPF应用程序,它以每秒30帧以上的速度显示用C++生成的超声图像。据我了解,在WPF中显示图像的正常过程是为您的图像创建一个BitmapSource并为您的图像设置Source,然后使其失效并显示。由于BitmapSources没有实现IDisposable,使用这种方法迫使我每秒创建30个BitmapSources。对于32bppArgb格式的640x480图像,每秒分配大约30MB/秒的内存,然后每10秒处理一次垃圾,导致明显的延迟。显然不是可接受的解决方案。我目前的解决方案是:在C++中:我在托管C++中创建一个System.Drawing.Bitmap(

c# - 分配给从 Internet 下载文件的最佳内存缓冲区大小是多少?

分配给从Internet下载文件的最佳内存缓冲区大小是多少?一些sample说它应该是1K。好吧,我需要大体上知道为什么会这样?还有,如果我们下载小的.PNG或大的.AVI有什么区别?StreamremoteStream;StreamlocalStream;WebResponseresponse;try{response=request.EndGetResponse(result);if(response==null)return;remoteStream=response.GetResponseStream();varlocalFile=Path.Combine(FileManage

c# - 将内存流对象序列化为字符串

现在我正在使用XmlTextWriter将MemoryStream对象转换为字符串。但我想知道是否有更快的方法将内存流序列化为字符串。我按照此处给出的代码进行序列化-http://www.eggheadcafe.com/articles/system.xml.xmlserialization.asp已编辑串流到字符串ms.Position=0;using(StreamReadersr=newStreamReader(ms)){stringcontent=sr.ReadToEnd();SaveInDB(ms);}串流stringcontent=GetFromContentDB();byt

c# - 从内存加载 Picturebox 图像?

我似乎不知道如何从内存中的位图中加载pictureBox图像。是否有可能或者我必须为位图创建临时文件? 最佳答案 内存中的图片是什么格式?如果你有一个实际的Bitmap对象,只需将它分配给PictureBox,如dtb所建议的:pictureBox.Image=bitmap;如果您将图像作为一系列字节保存在流中,则需要从流中加载图像:varimage=Image.FromStream(stream);pictureBox.Image=image;如果您有位图的WindowsGDI句柄,请使用varimage=Image.FromHb

c# - 什么时候太多 "lambda action"?

我经常发现自己将lambda用作某种“本地函数”,以便通过像这样的重复操作让我的生活更轻松:FuncGetText=(resource)=>this.resourceManager.GetString(resource);FuncFormatF1=(f,o)=>String.Format("{0:F1}{1}",f,o);FuncFormatF2=(f,o)=>String.Format("{0:F2}{1}",f,o);与其一遍又一遍地编写String.Format-thing,我可以愉快地使用FormatF2,例如并节省我自己的时间,当我需要更改格式时,只有一个地方可以进行编辑。特

c# - 为什么要调用 Dispose()?不会发生内存泄漏?

编辑:我的问题没有得到我正在寻找的主要答案。我不清楚。我真的很想知道两件事:不能调用Dispose()会导致内存泄漏吗?如果您有一个大型程序并且从不对任何IDisposable对象调用Dispose(),那么最糟糕的事情是什么?我的印象是,如果未对IDisposable对象调用Dispose(),可能会发生内存泄漏。根据关于此thread的讨论,我的看法是不正确的;如果未调用Dispose(),则不会发生内存泄漏。那为什么还要调用Dispose()呢?是否只是立即释放资源,而不是稍后释放资源?如果您有一个大型程序并且从不对任何IDisposable对象调用Dispose(),那么最糟糕

c# - 托管代码中是否可能发生内存泄漏? (特别是 C# 3.0)

例如,如果我有一个分层数据结构:classNode{publicListchildren;}它被填充到许多层次,然后在其中一个parent去:myNode.children.Clear();这将清除所有对直系子代的引用——但是那些直系子代引用的所有孙代、曾孙代等又如何呢?C#是否足够聪明,知道它们不再需要并且将被垃圾收集?我读过使用WPF数据绑定(bind)而不实现接口(interface)INotifyChanged会导致内存泄漏:http://blogs.msdn.com/b/micmcd/archive/2008/03/07/avoiding-a-wpf-memory-leak-